﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Xml.Serialization;
using Obra.Api;
using System.Runtime.Serialization;

namespace Obra.SmugMug.Api
{    
    [XmlRoot("Login")]
    public class LoginWithPasswordContract
        : ISession
    {
        [XmlAttribute]
        public string PasswordHash
        {
            get;
            set;
        }

        [XmlAttribute]
        public AccountType AccountType
        {
            get;
            set;
        }

        [XmlAttribute]
        public int FileSizeLimit
        {
            get;
            set;
        }

        [XmlAttribute]
        public int SmugVault
        {
            get;
            set;
        }

        [XmlElement]
        public SessionContract Session
        {
            get;
            set;
        }

        [XmlElement]
        public UserContract User
        {
            get;
            set;
        }

        #region ISession Members

        [XmlIgnore]
        public string SessionId
        {
            get { return this.Session.Id; }
        }

        #endregion
    }
}
